| |
Try the following suggestions:
-
Use the partial trial run facility of the
Filters to Apply tab to
either run individual filters or all filters up to a given point
- No files processed? Are you processing binary files? If so, check that the
Input Filter has the Binary Files option set to 'Process' or 'Confirm before processing'. The
status dialog also shows a count of the Binary files skipped in
Red so it is easy to tell.
- Where is your output
going? Check that the settings for Test Mode, Change extension to,
Output folder, Clipboard output and Single file output on
the output filter are set as you expect.
- Which files and folders are you processing? Check the
files tab.
- Is any input getting through to the output? You can check this by
inserting Debug
filters at strategic points in your filter to monitor the text at various
stages.
- You can also use the Filter
Options to enable logging - this will allow you to see which files are
processed, what gets done to them and where they are saved.
If you're running TextPipe from the command line, try the
Command Line Helper and
the Show Command Line
dialogs, and the command line
troubleshooting guide.
Stack Overflow Errors
If your patterns are poorly written (or alternatively, you find a bug in the
pattern matching library we use), you may run into Stack Overflow errors. These
occur when a pattern keeps matching text without any limit, and eventually runs
out of memory. They can be avoided by limiting how much text a pattern can match
- see Performance. To find the
offending filter, use these steps:
- Load the file into the Trial Run area
- Right click in the filter list, and choose 'Trial Run up to and including
this filter'. Keep altering the filter you click on until the error no longer
occurs
- The filter you just excluded is the problem filter
- In the problem filter, keep deleting the right-hand end of the pattern
until no error occurs
- The bit you just deleted was the problem. Rewrite it.
You should avoid patterns of the type
([^">])+
where the brackets are unnecessary. Each set of brackets causes a recursive
step. This pattern should be written as:
[^">]+
When the match can occur a large number of times, it can often be rewritten
as
[^">]{1,10} or ([^">]){1,10}
with no change to the pattern matching process.
This avoids too many recursive steps.
If you cannot eliminate the Out of Memory errors or Stack Overflow errors,
please send your filter to us.
|